﻿using System;
namespace HtmlParser
{
	public class HTML5Elements
	{
		/// <summary>
		/// Flow Element
		/// area（如果它是map元素的后裔）
		/// style（如果该元素设置了scoped属性）
		/// </summary>
		public const string Flow = 
			"a,abbr,address,area,article,aside,audio,b,bdi,bdo,blockquote,br,button,canvas,cite,code,command,datalist,del,details,dfn,div,dl,em,embed,fieldset,figure,footer,form,h1,h2,h3,h4,h5,h6,header,hgroup,hr,i,iframe,img,input,ins,kbd,keygen,label,map,mark,math,menu,meter,nav,noscript,object,ol,output,p,pre,progress,q,ruby,s,samp,script,section,select,small,span,strong,style,sub,sup,svg,table,textarea,time,u,ul,var,video,wbr,text";

		public const string Heading =
			"h1,h2,h3,h4,h5,h6,hgroup";

		public const string Sectioning =
			"article,aside,nav,section";

		/// <summary>
		/// a（如果其只包含段落式元素）
		/// area（如果它是map元素的后裔）
		/// del（如果其只包含段落式元素）
		/// ins（如果其只包含段落式元素）
		/// map（如果其只包含段落式元素）
		/// </summary>
		public const string Phrasing =
			"a,abbr,area,audio,b,bdi,bdo,br,button,canvas,cite,code,command,datalist,del,dfn,em,embed,i,iframe,img,input,ins,kbd,keygen,label,map,mark,math,meter,noscript,object,output,progress,q,ruby,s,samp,script,select,small,span,strong,sub,sup,svg,textarea,time,u,var,video,wbr,text";

		public string Embedded =
			"audio,canvas,embed,iframe,img,math,object,svg,video";

		/// <summary>
		/// audio（如果设置了controls属性）
		/// img（如果设置了usemap属性）
		/// input（如果type属性不为hidden状态）
		/// menu（如果type属性为toolbar状态）
		/// object（如果设置了usemap属性）
		/// video（如果设置了controls属性）
		/// </summary>
		public string Interactive =
			"a,audio,button,details,embed,iframe,img,input,keygen,label,menu,object,select,textarea,video";

		public string Metadata =
			"base,command,link,meta,noscript,script,style,title";
	}
}
